#pragma once

#include "Root.h"
#include "SceneManager.h"
#include "Camera.h"
#include "Light.h"
#include "SceneNode.h"
#include "Cube.h"
#include "Radian.h"
#include "Entity.h"
#include "ResourceManager.h"
#include "MeshManager.h"
#include "TextureFactory.h"
#include "LightShaderManager.h"
#include "OISManager.h"

using namespace Vampire;

class Example
{
public:
	Example(void) : mRoot(NULL) {}

public:
	void                initialise(HWND hWnd);
	void                release();
	BOOL                renderOneFrame();
	void                createScene();

private:
	Root*               mRoot;
	SceneManager*       mSceneMgr;
	Camera*             mCamera;
	Light*              mLight;
	SceneNode*          mSceneNode;
	Entity*             mEntity;
	Entity*             mEntity2;
	SceneNode*          mSceneNode2;

	OISManager*         mInput;
};

